package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 拼团审核对象 group
 * 
 * @author ruoyi
 * @date 2025-03-09
 */
public class Group extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 团Id */
    private Long id;

    /** 0三人团、1五人团、2十人团、3二十人团 */
    @Excel(name = "0三人团、1五人团、2十人团、3二十人团")
    private Long people;

    /** 当前拼团总人数 */
    @Excel(name = "当前拼团总人数")
    private Long totalGroup;

    /** 提货时间 */
    @Excel(name = "提货时间")
    private Long pickUpTime;

    /** 零售价格 */
    @Excel(name = "零售价格")
    private BigDecimal price;

    /** 拼团价格 */
    @Excel(name = "拼团价格")
    private BigDecimal groupPrice;

    /** 审核状态  0未开始、1进行中,2已结束,3已停止 */
    @Excel(name = "审核状态  0未开始、1进行中,2已结束,3已停止")
    private Long status;

    /** 每人限购 */
    @Excel(name = "每人限购")
    private Long limitBuy;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date endTime;

    /** 封面图 */
    @Excel(name = "封面图")
    private String surfacePlot;

    /** 配图1 */
    @Excel(name = "配图1")
    private String firstImg;

    /** 配图2 */
    @Excel(name = "配图2")
    private String secondImg;

    /** 邀请码 */
    @Excel(name = "邀请码")
    private String invitationCode;

    /** 拼团标题 */
    @Excel(name = "拼团标题")
    private String name;

    /** 可成几团 */
    @Excel(name = "可成几团")
    private Long maxGroup;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setPeople(Long people) 
    {
        this.people = people;
    }

    public Long getPeople() 
    {
        return people;
    }
    public void setTotalGroup(Long totalGroup) 
    {
        this.totalGroup = totalGroup;
    }

    public Long getTotalGroup() 
    {
        return totalGroup;
    }
    public void setPickUpTime(Long pickUpTime) 
    {
        this.pickUpTime = pickUpTime;
    }

    public Long getPickUpTime() 
    {
        return pickUpTime;
    }
    public void setPrice(BigDecimal price) 
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setGroupPrice(BigDecimal groupPrice) 
    {
        this.groupPrice = groupPrice;
    }

    public BigDecimal getGroupPrice() 
    {
        return groupPrice;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setLimitBuy(Long limitBuy) 
    {
        this.limitBuy = limitBuy;
    }

    public Long getLimitBuy() 
    {
        return limitBuy;
    }
    public void setEndTime(Date endTime) 
    {
        this.endTime = endTime;
    }

    public Date getEndTime() 
    {
        return endTime;
    }
    public void setSurfacePlot(String surfacePlot) 
    {
        this.surfacePlot = surfacePlot;
    }

    public String getSurfacePlot() 
    {
        return surfacePlot;
    }
    public void setFirstImg(String firstImg) 
    {
        this.firstImg = firstImg;
    }

    public String getFirstImg() 
    {
        return firstImg;
    }
    public void setSecondImg(String secondImg) 
    {
        this.secondImg = secondImg;
    }

    public String getSecondImg() 
    {
        return secondImg;
    }
    public void setInvitationCode(String invitationCode) 
    {
        this.invitationCode = invitationCode;
    }

    public String getInvitationCode() 
    {
        return invitationCode;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setMaxGroup(Long maxGroup) 
    {
        this.maxGroup = maxGroup;
    }

    public Long getMaxGroup() 
    {
        return maxGroup;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("people", getPeople())
            .append("totalGroup", getTotalGroup())
            .append("pickUpTime", getPickUpTime())
            .append("price", getPrice())
            .append("groupPrice", getGroupPrice())
            .append("status", getStatus())
            .append("createTime", getCreateTime())
            .append("limitBuy", getLimitBuy())
            .append("endTime", getEndTime())
            .append("surfacePlot", getSurfacePlot())
            .append("firstImg", getFirstImg())
            .append("secondImg", getSecondImg())
            .append("remark", getRemark())
            .append("invitationCode", getInvitationCode())
            .append("name", getName())
            .append("maxGroup", getMaxGroup())
            .toString();
    }
}
